package com.forum.service;

import com.forum.dto.ThreadUpdateDTO;
import com.forum.dto.ThreadsDTO;
import com.forum.dto.ThreadsPageQueryDTO;
import com.forum.result.PageResult;
import com.forum.vo.*;

import java.util.List;

public interface ThreadsService {
    PageResult pageQuery(ThreadsPageQueryDTO threadsPageQueryDTO);

    void updateByIdIsSticky(Long id,Integer isSticky);

    void deleteById(Long id);

    void updateByIdIsLocked(ThreadUpdateDTO threadUpdateDTO);

    void publish(ThreadsDTO threadsDTO);

    List<ThreadsVO> ArticleList();

    List<TopicsVO> TopicList();

    List<ClassicArticlesTop3VO> articleTop3();

    List<ArticlesAndTopicsVO> ArticlesAndTopics(Long categoryId, Integer type);

    List<ArticlesAndTopicsVO> latestArticle(Long categoryId,Integer type);

    List<MyThreadsVO> myThreads(Long userId);
}
